1. Field of the Invention
This invention relates in general to data processing, and more particularly to a method and apparatus for a method and apparatus for providing generalized write pre-compensation.
2. Description of Related Art
Recently developed data storage devices, such as magnetic disk drive devices (i.e., hard disk drives), have increased storage capacity and increased data access speed. With these advantages, magnetic disk drive devices have become widely used as auxiliary memory devices for computer systems. More generally, developments in pulse communications related to these improvements in disk drive technology have recently provided increased speed and reliability in a wide range of pulse communications systems. The present invention will be described in detail in the context of magnetic disk drive devices, but persons skilled in the pulse communications arts will readily apprehend that this invention provides an improved method for data pulse detection in a wide variety of pulse communication contexts.
The primary features of a magnetic disk drive device that affect storage capacity and access speed are the head, the recording medium, the servo mechanism, the signal processing technique used in the read/write channel, and the like. Among these, signal processing techniques utilizing PRML (Partial Response Maximum Likelihood) detection have greatly contributed to the increased storage capacities and high access speeds seen in modern magnetic disk drive devices.
A read channel circuit in a generic read/write channel circuit of a magnetic disk drive device includes components for initial processing of the analog read signal generated by the read/write head of the device. This processing provides automatic gain control (AGC) amplification, filtering, and equalization, as well as analog-to-digital conversion.
In a magnetic disk or tape data storage device, data is commonly stored on a magnetic medium by saturation recording in which each portion of the medium is magnetized to the point of saturation in one of two directions. The data to be stored is typically encoded to satisfy certain constraints and the encoded data is used to modulate the direction of magnetization. In a coded representation known as NRZI (non return to zero invert), each “one” bit of the encoded data causes a transition in the direction of magnetization, while each “zero” bit of the encoded data causes the magnetization direction to remain unchanged. In NRZ, there are no neutral or rest condition, such as a zero amplitude in amplitude modulation (AM), zero phase shift in phase-shift keying (PSK), or mid-frequency in frequency-shift keying (FSK). Note: For a given data signaling rate, i.e., bit rate, the NRZ code requires only one-half the bandwidth required by Manchester coding. With NRZ coding, 1's may be used to indicate magnet polarity change of, while 0's may be used to indicate no change in polarity change. A clock signal is used to write a sequence of encoded NRZI bits as a recording head moves along a track on the medium such that one bit is written at each clock tick.
When a read head is passed over the recorded data track, a voltage pulse is produced at each transition in magnetization. Successive voltage pulses have opposite polarity since successive magnetic transitions are in opposite directions. The written NRZI data sequence may be reconstructed from the resulting voltage waveform by associating a “one” bit with every clock tick at which a pulse occurs and a “zero” bit with every clock tick at which no pulse occurs. The original user data may then be decoded from the NRZI data.
To recover the written or transmitted data sequence, the receiver requires a clock signal synchronized with the received waveform. At each tick of this synchronized clock signal the receiver or read circuitry generates one bit of the NRZI data sequence by processing the surrounding waveform. It is often impossible or at least undesirable to store or transmit a separate synchronized clock signal with the data waveform. Instead, constraints are applied to the encoded NRZI data sequence to ensure that timing information may be extracted from the data waveform itself and used to “recover” a synchronized clock signal. Such a system is referred to as “self clocking”. Nonlinear bit shift (NLBS) in magnetic recording is the shift in position of a written transition due to the proximity effect of a preceding transition. In PRML, the readback waveform is synchronously sampled at regular intervals. Sample values depend on the position of written transitions. Therefore an unwanted shift, such as a nonlinear bit shift, leads to error in sample values that, in turn, degrades the performance of the PRML channel.
Write pre-compensation is a method to shift the write data timing in a direction to aid in pre-equalizing the signal. This optimizes the eventual readback signal; i.e., write signal modified based on prediction of what write signal will produce the cleanest readback signal using an understanding of physical/magnetic properties, i.e., predicting effects of distortion from magnets before/after that location before writing a magnet on magnetic media. As magnets are written on a disk media, close magnets can partially erase each other as unwanted signal timing shift. Write pre-compensation can aid in fixing this problem. The media magnets may require substantial amounts of write pre-compensation based on adjacent magnets. Even if magnets are two or three magnets apart (1 0 0 1), the partial erasure influence could be significant enough to affect read back performance. Another phenomena is ‘north’ and ‘south’ (N or S) can have timing asymmetry either from the write driver, head or media influences. Timing asymmetry correction is similar to pre-compensation in that it involves a shifting of write signal timing, even though timing asymmetry correction is performed for different reason/factors. Timing asymmetry correction provides a timing shift that is determined more by electronics, of a computer or HDD read channel, instead of magnetic factors. Being able to correct write timing asymmetry and provide write pre-compensation will improve read signal performance. It is desireable to have variable amounts of pre-compensation on a magnet-by-magnet basis based on the write sequence.
Today's high-density recording demands require grater flexibility in write pre-compensation. Currently, write pre-compensation methods rely on a stand-alone circuit that requires extra design time. Known solutions all have an architecture that limit the number of pre-compensation states available on a cycle-to-cycle basis.
It can be seen then that there is a need for a method and apparatus for a method and apparatus for providing generalized write pre-compensation.